home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Softdisk Supreme
/
Softdisk Supreme.iso
/
pc
/
DSK Files
/
0-49
/
SD004b.dsk
/
DICTIONARY.GAME.bas
< prev
next >
Wrap
BASIC Source File
|
2003-06-12
|
7KB
|
163 lines
5 REM *** DICTIONARY.GAME ***
100 REM ----------------------- DOCUMENTATION.MODULE -----------------------
110 REM CR = CORNER OF PAGE
120 REM DH = DICTIONARY HOLDER
130 REM I = GENERAL INDEX
140 REM LG = LENGTH
150 REM LP = LAST PAGE
160 REM NP = NUMBER OF PLAYERS
170 REM PG = PAGE NUMBER
180 REM PL = PLAYER NUMBER
190 REM PL$(20) = ARRAY FOR PLAYER NAMES
200 REM R$ = GENERAL RESPONSE VARIABLE
210 REM SC(20) = ARRAY FOR PLAYER'S SCORES
220 REM WD = WORD NUMBER
300 REM ------------------------ HOUSEKEEPING.MODULE ------------------------
310 DIM PL$(20)
320 DIM SC(20)
500 REM ------------------------ EXECUTIVE.MODULE ------------------------
520 GOSUB 1000
530 GOSUB 2000
540 GOSUB 3000
550 GOTO 540
999 END
1000 REM ------------------------ GAME.INSTRUCTIONS ------------------------
1020 TEXT : HOME
1030 VTAB (8): HTAB (14)
1040 PRINT "DICTIONARY GAME"
1050 VTAB (12)
1060 INPUT "DO YOU NEED INSTRUCTIONS? (Y OR N) ";R$
1070 IF R$ = "N" GOTO 1990
1080 HOME : VTAB (6)
1090 PRINT "DICTIONARY.GAME REQUIRES AN APPLE,"
1100 PRINT "A DICTIONARY, A RULER AND AT LEAST TWO"
1110 PRINT "PLAYERS.
1120 PRINT : PRINT "THE OBJECT OF THE GAME IS TO SHARPEN"
1130 PRINT "VOCABULARY AND STIMULATE CONVERSATION."
1140 PRINT : PRINT "THE PRIMARY PART THE APPLE PLAYS IS TO"
1150 PRINT "RANDOMLY SELECT A WORD FROM THE"
1160 PRINT "DICTIONARY. THE APPLE ALSO KEEPS"
1170 PRINT "SCORE."
1180 GOSUB 8000
1190 HOME : VTAB (4)
1200 PRINT "HERE'S HOW PLAY GOES ----"
1210 PRINT : PRINT "FIRST THE APPLE ASKS FOR THE"
1220 PRINT "NAMES OF ALL THE PLAYERS."
1230 PRINT : PRINT "NEXT THE APPLE SELECTS A PLAYER"
1240 PRINT "TO BE THE DICTIONARY HOLDER."
1250 PRINT "(THIS DUTY WILL BE ROTATED)": PRINT
1260 PRINT "THE APPLE PROCEEDS TO DIRECT THE"
1270 PRINT "DICTIONARY HOLDER TO A WORD IN THE"
1280 PRINT "FOLLOWING MANNER:": PRINT
1290 PRINT " 1. A PAGE NUMBER IS SPECIFIED"
1300 PRINT " 2. A PAGE CORNER IS SPECIFIED"
1310 PRINT " 3. A LENGTH IS SPECIFIED"
1320 GOSUB 8000
1330 HOME : VTAB (4)
1340 PRINT "FOR EXAMPLE THE APPLE MIGHT SPECIFY:": PRINT
1350 PRINT "PAGE 116 - LOWER LEFT - 3 INCHES": PRINT
1360 PRINT "THE DICTIONARY HOLDER WOULD TURN TO"
1370 PRINT "PAGE 116 AND STARTING AT THE LOWER "
1380 PRINT "LEFT HAND CORNER OF THE PAGE; MEASURE"
1390 PRINT "UP 3 INCHES."
1400 PRINT : PRINT "THE WORD NEAREST TO THE END OF THE"
1410 PRINT "RULER WOULD BE THE SELECTED WORD."
1420 PRINT : PRINT "ONCE THE WORD HAS BEEN SELECTED THE"
1430 PRINT "DICTIONARY HOLDER SPELLS AND"
1440 PRINT "PRONOUNCES IT."
1450 GOSUB 8000
1460 HOME : VTAB (4)
1470 PRINT "THE PLAYERS THEN ATTEMPT TO DEFINE THE"
1480 PRINT "WORD. THE DICTIONARY HOLDER IS THE"
1490 PRINT "JUDGE OF WETHER A DEFINITION IS CORRECT"
1500 PRINT "OR NOT."
1510 PRINT : PRINT "DEFINITIONS DO NOT HAVE TO BE PRECISE"
1520 PRINT "BUT THEY SHOULD CONVEY THAT YOU KNOW"
1530 PRINT "WHAT THE WORD MEANS."
1540 PRINT : PRINT "YOU CAN ADOPT YOUR OWN HOUSE RULES BUT"
1550 PRINT "I GIVE AS MUCH CREDIT TO A PLAYER WHO"
1560 PRINT "AGREES WITH A CORRECT DEFINITION AS TO"
1570 PRINT "THE PLAYER WHO STATED THE DEFINITION."
1580 PRINT : PRINT "REMEMBER, THE PURPOSE OF THE GAME IS TO"
1590 PRINT "STIMULATE CONVERSATION."
1600 GOSUB 8000
1610 HOME : VTAB (4)
1620 PRINT "YOU MIGHT WANT TO DIVIDE UP INTO TEAMS"
1630 PRINT "AND WRITE YOUR DEFINITIONS DOWN PRIOR"
1640 PRINT "TO REVEALING THEM."
1650 PRINT : PRINT "EACH TIME THE APPLE IS INSTRUCTED TO"
1660 PRINT "SELECT A NEW WORD, A NEW DICTIONARY"
1670 PRINT "HOLDER IS SELECTED ALSO."
1680 PRINT : PRINT "YOU MAY SET YOUR OWN END OF GAME POLICY"
1690 PRINT "BASED ON TIME OR NUMBER OF WORDS."
1700 PRINT : PRINT : HTAB (12)
1710 PRINT "GOOD LUCK!"
1720 GOSUB 8000
1990 RETURN
2000 REM ------------------------ GET.PLAYER'S.NAMES ------------------------
2010 HOME : VTAB (4)
2020 PRINT " TELL ME THE NAMES OF ALL PLAYERS"
2030 VTAB (8): HTAB (2)
2040 PRINT "FIRST NAME AND INITIAL OF LAST NAME"
2050 PRINT " WILL DO"
2055 VTAB 20: HTAB 3
2060 FLASH : PRINT "*";: NORMAL : PRINT " RETURN WITH NO INPUT WHEN THRU ";: FLASH : PRINT "*": NORMAL
2070 PL = PL +1
2080 VTAB (14): CALL -868
2090 PRINT "PLAYER NO. ";PL;: INPUT " ";PL$(PL)
2100 IF PL$(PL) < >"" GOTO 2070
2105 NP = PL -1
2110 HOME : VTAB 12
2120 PRINT "IN YOUR DICTIONARY,"
2130 PRINT : INPUT "ON WHAT PAGE IS THE WORD ZYME? ";LP
3000 REM ------------------------ PLAY.A.TURN ------------------------
3010 GOSUB 4000
3020 GOSUB 5000
3030 GOSUB 6000
3040 RETURN
4000 REM ------------------------ SELECT.DICTIONARY.HOLDER ------------------------
4010 HOME : VTAB 4
4020 HTAB 8
4030 PRINT "THE DICTIONARY HOLDER IS"
4040 DH = DH +1: IF DH >NP THEN DH = 1
4050 PRINT : HTAB 15
4060 PRINT PL$(DH)
4070 RETURN
5000 REM ------------------------ SELECT.A.WORD ------------------------
5010 PG = INT( RND(1) *(LP +1))
5020 CR = INT( RND(1) *4) +1
5030 LG = INT( RND(1) *80)/10
5040 VTAB (12): HTAB (12)
5050 PRINT "PAGE ";PG
5060 VTAB (14): HTAB (12)
5070 IF CR = 1 THEN PRINT "UPPER LEFT"
5080 IF CR = 2 THEN PRINT "UPPER RIGHT"
5090 IF CR = 3 THEN PRINT "LOWER LEFT"
5100 IF CR = 4 THEN PRINT "LOWER RIGHT"
5110 VTAB 16: HTAB (12)
5120 PRINT LG;" INCHES"
5130 VTAB 22
5140 INPUT "HIT RETURN WHEN READY TO POST SCORES ";R$
5150 RETURN
6000 REM ------------------------ GET.SCORES ------------------------
6010 HOME : PRINT "ENTER AN X FOR CREDIT,"
6020 PRINT "HIT SPACE BAR FOR NO CREDIT"
6030 PRINT
6035 WD = WD +1: VTAB 24: HTAB 12: PRINT "WORD NUMBER ";WD;: VTAB 4
6040 FOR I = 1 TO PL -1
6050 HTAB 3: PRINT "SCORE = ";SC(I);: HTAB 15: PRINT PL$(I)
6060 NEXT I
6070 FOR I = 1 TO PL -1
6080 VTAB 3 +I
6090 GET R$
6100 IF R$ = "X" THEN SC(I) = SC(I) +1
6110 PRINT R$;: HTAB 3: PRINT "SCORE = ";SC(I)
6120 NEXT I
6130 VTAB 24
6135 CALL -868
6140 INPUT "HIT RETURN FOR A NEW WORD ";R$
6150 RETURN
8000 REM ------------------------ ASK.FOR.RETURN ------------------------
8010 VTAB (24): HTAB (12)
8020 INPUT "** HIT RETURN ** ";R$
8030 RETURN